Conversation
Summary of ChangesHello @1000hyehyang, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! 이 PR은 채팅 기능을 위한 WebSocket (STOMP)의 기본 구성을 도입하고, 샘플 컨트롤러, DTO 및 테스트를 추가합니다. 이는 프론트엔드 개발팀이 채팅 기능을 쉽게 통합하고 검증할 수 있도록 지원하며, WebSocket 통신의 핵심 흐름을 명확히 합니다. Highlights
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here. You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension. Footnotes
|
There was a problem hiding this comment.
Code Review
채팅 기능의 기반이 되는 WebSocket 기본 구성을 추가하고, 테스트 코드를 통해 동작을 명확히 검증한 점이 좋습니다. 특히 ACK 수신과 브로드캐스트 수신 테스트를 분리하여 각 흐름을 명확하게 확인할 수 있도록 구성한 점이 인상적입니다.
다만, 몇 가지 개선이 필요한 부분이 있어 리뷰를 남깁니다. 가장 중요한 점은 실제 로직이 들어가야 할 컨트롤러에서 테스트용 Fixture를 사용하고 있다는 것입니다. 이는 샘플 구현이라고 하더라도 프로덕션 코드에 포함되어서는 안 되는 방식이므로 반드시 수정이 필요합니다. 또한, 임시로 허용한 WebSocket 엔드포인트의 보안 설정은 큰 위험을 초래할 수 있으므로 빠른 시일 내에 인증/인가 로직을 적용해야 합니다. 이 작업을 추적하기 위해 티켓을 생성하는 것을 권장합니다.
자세한 내용은 각 파일에 남긴 코멘트를 참고해주세요.
src/main/java/com/example/RealMatch/chat/presentation/controller/ChatSocketController.java
Show resolved
Hide resolved
...ava/com/example/RealMatch/chat/presentation/controller/fixture/ChatSocketFixtureFactory.java
Show resolved
Hide resolved
src/main/java/com/example/RealMatch/chat/presentation/config/ChatWebSocketConfig.java
Outdated
Show resolved
Hide resolved
src/test/java/com/example/RealMatch/chat/presentation/controller/ChatSocketControllerTest.java
Outdated
Show resolved
Hide resolved
| } | ||
|
|
||
| private void waitForSubscriptions() throws InterruptedException { | ||
| TimeUnit.MILLISECONDS.sleep(SUBSCRIBE_WAIT_MILLIS); |
There was a problem hiding this comment.
작업 개요
채팅 WebSocket(STOMP) 기본 구성과 샘플 컨트롤러/DTO를 추가하고,
WS 테스트를 ACK/브로드캐스트로 분리해 검증 범위를 명확히 했습니다.
프론트엔드 개발팀을 위해 WS 흐름 문서를 함께 API 명세서에 적어두었습니다.
변경 사항
/ws/chat,/app,/topic,/queue,/user)